A wide variety of peripheral devices have been developed for use with computers. In that regard, many peripheral devices, such as magnetic stripe readers and mice, are used to provide information to a host computer. Other peripheral devices, such as printers and monitors, are used to process the output of the host computer. Nearly all such peripheral devices, however, require some form of power for proper operation.
One particular type of peripheral device of interest is used with a host computer to process bar codes. A bar code is a sequence of alternating bars and spaces that is typically applied to a product or its packaging. The bar code contains information about the product in a form that can be quickly and easily processed by specially designed bar code "readers."
Usually, the widths of the various bars and spaces determine the information "encoded" in the bar code. For example, this approach is widely employed in a format known as the Universal Product Code (UPC). Typically, the bar code identifies the product and further processing is required to associate additional information, such as price and inventory data, with the product.
As noted above, the information contained in a bar code is "decoded" by a bar code reader. Bar code readers perform two basic functions. First, the bar code reader produces an electrical signal having at least one parameter that varies with the width of the bars and spaces in the bar code. Typically, this parameter is the duration of alternating low and high signal intervals associated with the bars and spaces.
The second function of the bar code reader is the decoding of the electrical signal. For example, the durations of the alternating low and high signal intervals are analyzed to determine which characters the signal and, hence, bar code represents.
To accomplish these functions, conventional bar code readers include an optical scanner and a decoder. The scanner includes a light source and photodetector that may, for example, be physically moved across the bar code by an operator. The light source sequentially illuminates the bars and spaces being scanned. The photodetector, in turn, produces an electrical output whose magnitude is proportional to the light reflected. Because the bars generally absorb light, while the spaces generally reflect light, the photodetector output alternates between high and low intervals, with the duration of each interval being a function of the width of the corresponding bar or space scanned.
The decoder typically includes bath hardware and software components that cooperatively perform several functions. First, the decoder processes the photodetector output to determine the relative widths of the bars and spaces in the bar code scanned. Then, the decoder uses this coded information, along with the correlations between bar and space widths and character coding for the bar code symbology adopted, to decode the character message encoded into the bar code.
In the preceding discussion, a bar code reader is described as including both a scanner and a decoder. As will be appreciated, however, the decoding operation can be performed either independently of, or on board, the scanner. Thus, for the purposes of this document, the term "scanner" will be understood to encompass devices responsible for scanning, regardless of whether they are also responsible for decoding.
Having briefly reviewed the operation of bar code readers or scanners, one particular aspect of peripheral operation, the supply of peripheral power, will now be considered in greater detail. In that regard, using bar code scanners again for illustrative purposes, the power requirements of such scanners have been met in a variety of different ways.
For example, scanner power is often provided externally. In that regard, when decoding is performed remotely from the scanner, the decoder may include a power source designed specifically to power the decoder and the scanner. This power source may be, for example, a battery or a regulated supply. While the use of external power in this manner reduces the size and weight of the scanner, it requires a specially designed decoder power supply.
As an alternative, a power source, such as a battery, could be included as part of the scanner. The use of a battery, however, has several disadvantages. First, a battery may increase the weight and size of the scanner. In addition, a battery is typically able to operate the scanner for only limited periods before replacement or recharging is required.
A number of techniques have also been suggested for reducing the power requirements of the scanner. In that regard, the power applied to the light source on the scanner may be controlled to minimize power consumption. For example, this may be accomplished by reducing the light source drive level. However, the reduced light levels may not be accurately detected by the photodetector, potentially having an adverse effect on the accuracy of bar code reading. To overcome this limitation, the duty cycle of the light source may instead be controlled. Specifically, the light source can be turned off or operated at a low duty cycle when the scanner is not being used to scan. As a result, the light source's power requirements during that time are reduced.
Even with the scanner's power requirements reduced, however, some power source is still required. Thus, a specially designed external source is needed to provide the requisite power or the scanner's weight and size are increased by the addition of an on-board power source.
As will be appreciated, the power requirements of other peripheral devices have also been met in a variety of ways. As the trend toward portability in the computer field continues, however, a growing emphasis will be placed on the need to power peripherals without increasing the peripherals' weight and without requiring specially designed external sources. In view of these observations, it would be desirable to provide a peripheral interface that allows a conventional peripheral device to be externally powered from another conventional device.